Skip to main content

print

Type

command

Summary

Prints one or more cards.

Syntax

print <card> [from <topLeft> to <bottomRight>] [into <pageRect>]
print {<stack> | <card> |{marked| <number> |all} cards} [into <pageRect>]
print {<stack> | <card> |{marked| <number> |all} cards} [from <topLeft> to <bottomRight>]
print break

Description

Use the print command to print out a card, a set of cards, or all the cards of a stack.

The print command prints only the area of a card that is visible in the stack window. To print an area of a card whose objects extend beyond the window boundaries, either set the stack's rectangle so it's large enough to hold all the objects to print, or use the print...from form of the print command.

To print multiple cards selected one at a time, start with the open printing command, issue any print commands you want, then use the close printing command to print all the cards you specified in the print commands as a single batch.

If you specify a form that includes more than one card (such as print stack), the cards may be printed more than one to a page, depending on the size of the cards and on whether you specify a pageRect.

The print marked cards form prints all the cards in the current stack whose mark property is set to true.

The print all cards form is equivalent to print this stack.

The print break form forces a page break.

note

If a card is larger than a full page, the print command prints only the first page of the card, starting at the top left corner. To print the entire card, use the print...into pageRect form to scale the card to the page.

LiveCode visits each card as it's printed, returning to the original card when the printing is done, but it doesn't send any system messages such as openCard while moving from card to card during printing. If you don't want the user to see these card changes, set the lockScreen property to true before you print.

Cross-platform note

On Mac OS and Windows systems, the print command uses the current printer. On Unix systems, the print command creates a PostScript file and runs the program specified in the printCommand property, with the file as input. On mobile platforms, the print command only works in the context of an explicit open printing to pdf command.

Parameters

NameTypeDescription

card

Any card reference. If you specify a card, that single card is printed.

topLeft

The point specifying the topLeft of the area of the card to be printed. The point consists of two integers separated by a comma: the horizontal distance in pixels from the left edge of the card window to the left edge of the area to be printed, the vertical distance from the top edge of the card window to the top edge of the area to be printed. (Coodinates are in left,top - x,y order.) If you don't specify a topLeft and bottomRight, the entire visible portion of the card is printed.

bottomRight

The point specifying the bottomRight of the area of the card to be printed. The point consists of two integers separated by a comma: the horizontal distance in pixels from the left edge of the card window to the right edge of the area to be printed, the vertical distance from the top edge of the card window to the bottom edge of the area to be printed. (Coodinates are in right,bottom - x,y order.) If you don't specify a topLeft and bottomRight, the entire visible portion of the card is printed.

pageRect

The rectangle into which the card is printed, and consists of four integers separated by commas: the left, top, right, and bottom edges of the printed card, in points. (There are 72 points to an inch.) The card is scaled to fit the specified pageRect. If you don't specify a pageRect, the card's size depends on the printScale property. Note that specifying a pageRect will not cause any page breaks. You must manually call print break to print to the same rect on different pages.

stack

Any open stack. If you specify a stack, all the cards of that stack are printed. (You can print a stack even if its window isn't visible).

number

The number of cards to print, starting with the current card.

Examples

print card 1
print stack "Output" into 100,100,450,410
print this card from 0,0 to the mouseLoc
print marked cards into the rect of graphic "printArea"
open printing
repeat with x = 1 to the number of cards
print card
end repeat
close printing
# Print multiple cards into the same rect on each page
put "100,100,450,410" into tOutputRect

repeat with i = 1 to the number of cards of this stack
print card i of this stack into tOutputRect
print break
end repeat

message: openCard

object: card, stack

property: printRectangle, printGutters, printFontTable, printPageNumber, printCommand, printRowsFirst, printDuplex, lockScreen, printTitle, printCollate

command: revPrintReport, answer page setup, mark, cancel printing, revBrowserPrint, open printing, open printing to pdf, close printing, answer printer, reset printing

glossary: object, property, Windows, Unix, command, PostScript, Mac OS

keyword: file, marked, rectangle, card

Compatibility and Support

Introduced

LiveCode 1.0

OS

mac

windows

linux

ios

android

Platforms

desktop

mobile

Thank you for your feedback!

Was this page helpful?